home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / comm / irc / KuangEleven3Gm.lha / Kuang Eleven 3 / Rexx / awayaway.amirx < prev    next >
Text File  |  1998-05-09  |  2KB  |  89 lines

  1. /* $VER: AwayAway.amirx 3.0 (9.5.98) Kuang Eleven edition
  2.    Requires : AmIRC 2 , Kuang Eleven 3
  3.    Configure the sound to play when you are away
  4.    Sets AWAY
  5. */
  6. snd='Away.WAV'
  7. options results
  8.  
  9. awnick=getclip('sc_awaynick')
  10. a=getclip('sc_awaytxt')
  11. portvalue=right(address(),1)
  12.  
  13. awayecho=gettemp('awayecho')
  14. if awayecho=='' then call autostring
  15. else do
  16.     args=gettemp('awayargs')
  17.     cmd=gettemp('awaycmd')
  18.     str=gettemp('awaystr')
  19.     call readargs(args,'QUIET=Q/S,VERBOSE=V/S,HIDE/S,ALL/S,BULLSHIT/F')
  20. end
  21. if getclip('st_awayt')=='' then call setclip('st_awayt',date('i') time('s'))
  22.  
  23. if hide|getclip('sc_aicon')=='ON' then "HIDE"
  24. if awnick~='' then do
  25.     call setclip('st_orignick'portvalue,getnick())
  26.     'RAW NICK' awnick
  27. end
  28.  
  29. if str~='' then do
  30.     "CHANNELS"
  31.     c=result
  32.     "GETCHANNEL"
  33.     cc=result
  34.     if words(c)~==0 then do i=1 to words(c)
  35.         ic=word(c,i)
  36.         if ic=cc then 'SAY' cmd
  37.         else 'QueueRAW PRIVMSG' ic ':'str
  38.     end
  39.     if a~='TEXT' then "PLAYSOUND" snd
  40. end
  41. else if awayecho~='' then cecho('SetAway',awayecho)
  42. EXIT
  43. cecho:;"ECHO P="d2c(27)"b«"arg(1)"» TEXT="arg(2)'.';return 0
  44. getnick:;"GETMYNICK";return result
  45.  
  46. gettemp: PROCEDURE EXPOSE portvalue
  47. clip='st_'arg(1)||portvalue
  48. x=getclip(clip)
  49. call setclip(clip)
  50. return x
  51.  
  52. autostring:
  53. reason=getclip('sc_msg_autoaway')
  54.  
  55. disp=getclip('sc_awayverb')
  56. log=getclip('sc_log')
  57. if log=='' then log='OFF'
  58. page=getclip('sc_page')
  59. if page=='' then page='OFF'
  60. s=' Log['log'] Page['page']'
  61. if disp='ON' then str='->'reason'<-';else str=':' reason
  62. awayecho=str||s
  63. if disp='ON' then str=str||s
  64. str='is away' str
  65. if page='ON' then do
  66.     if awnick='' then mnick=awnick;else mnick=getnick()
  67.     s=s '/CTCP' mnick 'PAGE'
  68. end
  69. hide=0
  70. if getclip('sc_aicon')=='ON' then hide=1
  71. if hide&show('P',KUANG) then address KUANG HIDE
  72. Select
  73.     when a='TEXT'|a='ON' then do
  74.         cmd='/ME' str
  75.         str=div||'ACTION' str||div
  76.     end
  77.     when a='SOUND' then do
  78.         str=div||'SOUND' snd||div
  79.         cmd='/SOUND' snd
  80.     end
  81.     when a='BOTH' then do
  82.         cmd='/SOUND' snd str
  83.         str=div||'SOUND' snd str||div
  84.     end
  85. otherwise
  86.     str=''
  87. end
  88. return
  89.